﻿using System;
using Microsoft.Office.Interop.Word;
using System.Collections.Generic;
using System.Collections.ObjectModel;

namespace CodeCounsel.Office.DatabindingToolkit
{
    class ControlTypes
        : ObservableCollection<ControlType>
    {
        public static ControlType Text
        {
            get
            {
                return new TextBoxControl();
            }
        }

        public static ControlType DropDown
        {
            get
            {
                return new DropDownListControl();
            }
        }

        public static ControlType DatePicker
        {
            get
            {
                return new DatePickerControl();
            }
        }

        public static ControlType Combobox
        {
            get
            {
                return new ComboBoxControl();
            }
        }

        public static IEnumerable<ControlType> All
        {
            get
            {
                return new List<ControlType>(
                    new ControlType[] { Text, Combobox });
            }
        }

        public static IEnumerable<ControlType> ControlsInLayoutTable
        {
            get
            {
                return new List<ControlType>(
                    new ControlType[] { null });
            }
        }

        public ControlTypes()
        {
            Add(Text);
            Add(Combobox);
            Add(DropDown);
            Add(DatePicker);
        }
    }
}
